package chapter05;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class java04_Object_Date {
    public static void main(String[] args) {
        // TODO 常见类和对象
        // Date : 日期类
        // 时间戳 ： 毫秒
        // System.out.println(System.currentTimeMillis());

        // 日期类
        Date d = new Date();
        System.out.println(d);

        // Java格式化日期格式：
        // y(Y)->年->yyyy
        // m(M)->MM：月份，mm:分钟
        // d(D)->dd:一个月中的日期.D:一年中的日期
        // h(H)->h:12进制，HH:24进制
        // s(S)->s:秒，S:毫秒

        // Date -String
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); // 修改这里的格式 "s" 为 "ss"
        String dateFormatString = sdf.format(d);
        System.out.println(dateFormatString);

        // String -Date
        String dateString = "2022-06-01 17:01:37.010";

        try {
            Date parseDate = sdf.parse(dateString);
            System.out.println(parseDate);

            // 根据时间戳构建指定的日期对象
            // d.setTime(System.currentTimeMillis());
            // 获取时间戳
            d.getTime();
            System.out.println(parseDate.before(d));
            System.out.println(parseDate.after(d));
        } catch (ParseException e) {
            System.err.println("Date parsing failed: " + e.getMessage());
        }
    }
}